import Vue from 'vue'
import Vuex from 'vuex'

Vue.use(Vuex)

const ADD_ITEMNUM = 'ADD_ITEMNUM'
const REMBER_ANSWER = 'REMBER_ANSWER'
const INITIALIZE_DATA = 'INITIALIZE_DATA'
const COMPUTED_SCORE = 'COMPUTED_SCORE'
export default new Vuex.Store({
    state: {
        itemNum: 1, // 第几题
        result: [], // 这个数组用来记录
        totleScore: 0,
        problems:[
            {
                item: '公司制定有10年以上的长远发展战略吗?',
                type: 1,
                answer:[
                    {
                        optionNumber: 2,
                        describe: '有'
                    },
                    {
                        optionNumber: 0,
                        describe: '没有'
                    }
                ],
            },
            {
                item:'公司制定有发展愿景吗?',
                type: 1,
                answer:[
                    {
                        optionNumber: 2,
                        describe: '有'
                    },
                    {
                        optionNumber: 0,
                        describe: '没有'
                    }
                ],
            },
            {
                item: '公司制定的长远发展战略是',
                type: 1,
                answer:[
                    {
                        optionNumber: 1,
                        describe: '5年的'
                    },
                    {
                        optionNumber: 2,
                        describe: '10年的'
                    },
                    {
                        optionNumber: 3,
                        describe: '10年以上的'
                    }
                ],
            },
            {
                item: '公司制定有3~5年的战略吗?',
                type: 1,
                answer:[
                    {
                        optionNumber: 2,
                        describe: '有'
                    },
                    {
                        optionNumber: 0,
                        describe: '没有'
                    }
                ],
            },
            {
                item: '制定战略时，有战略目标吗?',
                type: 1,
                answer:[
                    {
                        optionNumber: 2,
                        describe: '有'
                    },
                    {
                        optionNumber: 0,
                        describe: '没有'
                    }
                ],
            },
            {
                item: '制定战略目标时，是',
                type: 1,
                answer:[
                    {
                        optionNumber: 1,
                        describe: '自己决定的'
                    },
                    {
                        optionNumber: 0,
                        describe: '自己授权他人制定的'
                    },
                    {
                        optionNumber: 2,
                        describe: '按部门由下至上指定的'
                    }
                ],
            },
            {
                item: '公司每年都制定年度战略吗?',
                type: 1,
                answer:[
                    {
                        optionNumber: 2,
                        describe: '是'
                    },
                    {
                        optionNumber: 1,
                        describe: '有时'
                    },
                    {
                        optionNumber: 0,
                        describe: '从来没有'
                    }
                ],
            },
            {
                item: '制定年度战略时，做过哪几个部分',
                type: 2,
                answer:[
                    {
                        optionNumber: 1,
                        describe: '品牌战略'
                    },
                    {
                        optionNumber: 1,
                        describe: '营销战略'
                    },
                    {
                        optionNumber: 1,
                        describe: '人才战略'
                    },
                    {
                        optionNumber: 1,
                        describe: '产品战略'
                    },
                    {
                        optionNumber: 1,
                        describe: '财务战略'
                    }
                ],
            },
            {
                item: '你知道品牌战略的内容吗?',
                type: 1,
                answer:[
                    {
                        optionNumber: 2,
                        describe: '知道'
                    },
                    {
                        optionNumber: 1,
                        describe: '了解'
                    },
                    {
                        optionNumber: 0,
                        describe: '不知道'
                    }
                ],
            },
            {
                item: '公司制定有品牌战略吗?',
                type: 1,
                answer:[
                    {
                        optionNumber: 2,
                        describe: '有'
                    },
                    {
                        optionNumber: 0,
                        describe: '没有'
                    }
                ],
            },
            {
                item: '你知道营销战略的内容吗?',
                type: 1,
                answer:[
                    {
                        optionNumber: 2,
                        describe: '知道'
                    },
                    {
                        optionNumber: 1,
                        describe: '了解'
                    },
                    {
                        optionNumber: 0,
                        describe: '不知道'
                    }
                ],
            },
            {
                item: '公司制定有营销战略吗?',
                type: 1,
                answer:[
                    {
                        optionNumber: 2,
                        describe: '有'
                    },
                    {
                        optionNumber: 0,
                        describe: '没有'
                    }
                ],
            },
            {
                item: '你知道人才战略的内容吗?',
                type: 1,
                answer:[
                    {
                        optionNumber: 2,
                        describe: '知道'
                    },
                    {
                        optionNumber: 1,
                        describe: '了解'
                    },
                    {
                        optionNumber: 0,
                        describe: '不知道'
                    }
                ],
            },
            {
                item: '公司制定有人才发展战略吗?',
                type: 1,
                answer:[
                    {
                        optionNumber: 2,
                        describe: '有'
                    },
                    {
                        optionNumber: 0,
                        describe: '没有'
                    }
                ],
            },
            {
                item: '你知道产品战略的内容吗?',
                type: 1,
                answer:[
                    {
                        optionNumber: 2,
                        describe: '知道'
                    },
                    {
                        optionNumber: 1,
                        describe: '了解'
                    },
                    {
                        optionNumber: 0,
                        describe: '不知道'
                    }
                ],
            },
            {
                item: '公司制定有产品战略吗?',
                type: 1,
                answer:[
                    {
                        optionNumber: 2,
                        describe: '有'
                    },
                    {
                        optionNumber: 0,
                        describe: '没有'
                    }
                ],
            },
            {
                item: '你知道财务战略的内容吗?',
                type: 1,
                answer:[
                    {
                        optionNumber: 2,
                        describe: '知道'
                    },
                    {
                        optionNumber: 1,
                        describe: '了解'
                    },
                    {
                        optionNumber: 0,
                        describe: '不知道'
                    }
                ],
            },
            {
                item: '公司制定有财务战略吗?',
                type: 1,
                answer:[
                    {
                        optionNumber: 2,
                        describe: '有'
                    },
                    {
                        optionNumber: 0,
                        describe: '没有'
                    }
                ],
            },
        ]
    },
    mutations: {
        // 初始化信息
        [INITIALIZE_DATA](state) {
            state.itemNum = 1;
            state.result = [];
            state.totleScore = 0
        },
        // 点击进入下一题
        [ADD_ITEMNUM](state) {
            state.itemNum ++;
        },
        // 记录答案
        [REMBER_ANSWER](state, id) {
            state.result.push(id);
            console.log('state.result===>'+state.result)
        },
        // 统计分数
        [COMPUTED_SCORE](state) {
            state.result.forEach((item, index) => {
                state.totleScore = state.totleScore + item;
            })
        }
    },
    actions: {
        //初始化信息
        initializeData({ commit }) {
            commit('INITIALIZE_DATA');
        },
        addNum({ commit, state }, id) {
            //点击下一题，记录答案id，判断是否是最后一题，如果不是则跳转下一题
            commit('REMBER_ANSWER', id);
            if (state.itemNum < state.problems.length) {
                commit('ADD_ITEMNUM');
            }
        },
        // 计算总分
        countScore({ commit }) {
            commit('COMPUTED_SCORE');
        }
    }
})
